package main

import (
	"fmt"
)

var (
	isMap   bool                   = false
	mapData map[string]interface{} = make(map[string]interface{})
)

func initMap() {
	if !isMap {
		mapData = make(map[string]interface{})
	}
	isMap = true
	return
}

func set(name string, value interface{}) {
	initMap()

	mapData[name] = value
}

func get(name string) (value interface{}) {
	err, value := mapData[name]
	if err != nil {
		value = nil
	}
	return
}

func map1() {

	if !isMap {
		mapData["is"] = 0
	} else {
		mapData["is"] = 2
	}
	isMap = true
	fmt.Println(mapData)

	v := mapData["is"]
	fmt.Println(v)
}

func main() {

	//map1()
	set("1", 100)
	fmt.Println(get("1"))
	fmt.Println(mapData)
	fmt.Println(isMap)
	//map1()
	set("2", 200)
	fmt.Println(mapData)
}
